package com.example.analysis.mapper;

import com.example.analysis.domain.EvaluateListInfo;
import com.example.analysis.domain.ScoreInfo;
import com.example.analysis.entity.*;

import java.util.List;

import com.example.analysis.entity.Class;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface EvaluateListStudentDao {
    int deleteByPrimaryKey(EvaluateListStudentKey key);

    int insert(EvaluateListStudent record);

    int insertSelective(EvaluateListStudent record);

    List<EvaluateListStudent> selectByPrimaryKey( @Param("studentId") String studentId,@Param("subId") String subId,@Param("teacherId") String teacherId);

    int updateByPrimaryKeySelective(EvaluateListStudent record);

    int updateByPrimaryKey(EvaluateListStudent record);

    List<EvaluateListInfo> getAll(String semester);

    // 根据quest_id查询分数
    // 根据questId、teacherId、courseId查询分数
    double[] selectScoreByParam(@Param("questId") String questId, @Param("courseId") String courseId, @Param("teacherId") String teacherId);
    // 根据Id查
    double[] selectScoreByQuestId(String questId);


    List<EvaluateListInfo> getList(EvaluateListInfo evaluateListInfo);

    List<ScoreInfo> getCourse(String semester);

    List<Class> getClass(@Param("subId")String subId,@Param("semester")String semester);

    List<Course> getClassOne();

    List<EvaluateListInfo> getEvaluate();

    List<ElectionList> getOne(String semester);
}
